Skip to content

Conversation

@aigerimu
Copy link
Contributor

fixes #936

@aigerimu aigerimu marked this pull request as draft October 22, 2025 19:50
@github-actions
Copy link

To fix the formatting issues:

  1. Install necessary dependencies: npm ci
  2. Then, run this command:
npx remark -o --silent --silently-ignore ecosystem/node/overview.mdx 

@aigerimu
Copy link
Contributor Author

@aigerimu include ton repo

@github-actions
Copy link

Thanks for the docs updates around the node overview. A couple of high‑severity anchor issues need fixes before merge.

Findings (2)

High (2)

[HIGH] Broken internal anchor for “Single nominator”

Location:

| [Single nominator](/ecosystem/node/overview#liquid-staking) | In this mode, the smart contract accepts stakes from a single user and operates a validator on the user’s behalf, distributing rewards securely using a cold wallet. |

Description:
The “Single nominator” table entry links to #liquid-staking, which targets a different section. The correct target is the “Single nominator pool” section on this page (ecosystem/node/overview.mdx:46), whose slug is #single-nominator-pool. Broken internal anchors are release‑blocking per the style guide.

Suggestion:

- |    [Single nominator](/ecosystem/node/overview#liquid-staking)    | In this mode, the smart contract accepts stakes from a single user and operates a validator on the user’s behalf, distributing rewards securely using a cold wallet.                                                                                                                                                                                              |
+ |    [Single nominator](/ecosystem/node/overview#single-nominator-pool)    | In this mode, the smart contract accepts stakes from a single user and operates a validator on the user’s behalf, distributing rewards securely using a cold wallet.                                                                                                                                                                                              |

[HIGH] Broken internal anchor to config parameter 16

Location:

Validator nodes or validators are the TON network participants who propose new blocks and verify transactions according to TON's [_proof-of-stake_](https://en.wikipedia.org/wiki/Proof_of_stake) mechanism. The top 400 validators are selected based on network [configuration parameter](/foundations/config#param-16%3A-validators-limits). Validators receive rewards for validation.

Description:
The link to the configuration reference uses an encoded colon in the anchor (#param-16%3A-validators-limits), which does not match the slug generated for the target heading “## Param 16: validators limits” on the referenced page. The correct slug drops punctuation and uses hyphens: #param-16-validators-limits. Broken/missing anchors are release‑blocking per the style guide.

Suggestion:

- Validator nodes or validators are the TON network participants who propose new blocks and verify transactions according to TON's [_proof-of-stake_](https://en.wikipedia.org/wiki/Proof_of_stake) mechanism. The top 400 validators are selected based on network [configuration parameter](/foundations/config#param-16%3A-validators-limits). Validators receive rewards for validation.
+ Validator nodes or validators are the TON network participants who propose new blocks and verify transactions according to TON's [_proof-of-stake_](https://en.wikipedia.org/wiki/Proof_of_stake) mechanism. The top 400 validators are selected based on network [configuration parameter](/foundations/config#param-16-validators-limits). Validators receive rewards for validation.

@github-actions
Copy link

To fix the formatting issues:

  1. Install necessary dependencies: npm ci
  2. Then, run this command:
npx remark -o --silent --silently-ignore ecosystem/node/overview.mdx 

Added details about Liteserver and Validator nodes, including references for commands in mytonctrl.
@github-actions
Copy link

To fix the formatting issues:

  1. Install necessary dependencies: npm ci
  2. Then, run this command:
npx remark -o --silent --silently-ignore ecosystem/node/overview.mdx 

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the update. In ecosystem/node/overview.mdx: several suggestions to fix internal anchors and link paths—please apply the inline suggestions.

Comment on lines +29 to +30
| [Nominator pool](/ecosystem/node/overview#nominator-pool) | In this mode, the smart contract accepts stakes from multiple users and operates a validator on their behalf, distributing rewards securely among participants. |
| [Single nominator](/ecosystem/node/overview#liquid-staking) | In this mode, the smart contract accepts stakes from a single user and operates a validator on the user’s behalf, distributing rewards securely using a cold wallet. |

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[HIGH] Broken/misdirected anchors in modes table

Two links in “MyTonCtrl management modes” are incorrect. “Nominator pool” points to #nominator-pool, but the actual section heading is “Nominator pools”, so the anchor must be #nominator-pools. “Single nominator” points to #liquid-staking, which is the wrong section and misleads readers. Broken/missing anchors are HIGH by the style guide; see https://github.com/ton-org/docs/blob/main/contribute/style-guide-extended.mdx?plain=1#L625-L629 and https://github.com/ton-org/docs/blob/main/contribute/style-guide-extended.mdx?plain=1#L31-L31.

Suggested change
| [Nominator pool](/ecosystem/node/overview#nominator-pool) | In this mode, the smart contract accepts stakes from multiple users and operates a validator on their behalf, distributing rewards securely among participants. |
| [Single nominator](/ecosystem/node/overview#liquid-staking) | In this mode, the smart contract accepts stakes from a single user and operates a validator on the user’s behalf, distributing rewards securely using a cold wallet. |
| [Nominator pool](/ecosystem/node/overview#nominator-pools) | In this mode, the smart contract accepts stakes from multiple users and operates a validator on their behalf, distributing rewards securely among participants. |
| [Single nominator](/ecosystem/node/overview#single-nominator) | In this mode, the smart contract accepts stakes from a single user and operates a validator on the user’s behalf, distributing rewards securely using a cold wallet. |

Please leave a reaction 👍/👎 to this suggestion to improve future reviews for everyone!

Comment on lines 57 to +58
<Aside type="note">A [reference](/ecosystem/node/mytonctrl/pools) for nominator-related commands is available in mytonctrl.</Aside>

Full and archive nodes typically enable liteserver mode because they store blockchain history and handle external requests. In contrast, validator nodes do not need it as they focus on validating new blocks efficiently without extra workload from external queries.
### Liquid staking

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[HIGH] Missing anchor target for “single-nominator”

The modes table deep-links to #single-nominator, but there is no corresponding section heading to define this anchor. This creates a broken link path for readers. Anchors must resolve correctly; absence of the target is HIGH severity per the style guide.

Please leave a reaction 👍/👎 to this suggestion to improve future reviews for everyone!

Comment on lines +81 to +83
| Validator or nominator | [Setting up a node using MyTonCtrl](./setup-mytonctrl) with validator, nominator pool, or single nominator workflows. MyTonCtrl automates validator wallets, overlays, elections, and upgrades. |
| Liteserver APIs | [Setting up a node using MyTonCtrl](./setup-mytonctrl) with liteserver mode. Enable archive mode if required. |
| Isolated development network | [Setting up a local blockchain using MyLocalTon](./setup-mylocalton) with a local shard, explorer, and APIs for development and testing without affecting the mainnet. |

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[HIGH] Relative internal links violate root-absolute rule

The environment selection table uses relative link segments (./setup-mytonctrl, ./setup-mylocalton). Per the style guide, internal links must be root-absolute and anchors must resolve correctly; relative segments are prohibited. This is a HIGH-severity rule. See https://github.com/ton-org/docs/blob/main/contribute/style-guide-extended.mdx?plain=1#L625-L629 for the normative requirement.

Suggested change
| Validator or nominator | [Setting up a node using MyTonCtrl](./setup-mytonctrl) with validator, nominator pool, or single nominator workflows. MyTonCtrl automates validator wallets, overlays, elections, and upgrades. |
| Liteserver APIs | [Setting up a node using MyTonCtrl](./setup-mytonctrl) with liteserver mode. Enable archive mode if required. |
| Isolated development network | [Setting up a local blockchain using MyLocalTon](./setup-mylocalton) with a local shard, explorer, and APIs for development and testing without affecting the mainnet. |
| Validator or nominator | [Setting up a node using MyTonCtrl](/ecosystem/node/setup-mytonctrl) with validator, nominator pool, or single nominator workflows. MyTonCtrl automates validator wallets, overlays, elections, and upgrades. |
| Liteserver APIs | [Setting up a node using MyTonCtrl](/ecosystem/node/setup-mytonctrl) with liteserver mode. Enable archive mode if required. |
| Isolated development network | [Setting up a local blockchain using MyLocalTon](/ecosystem/node/setup-mylocalton) with a local shard, explorer, and APIs for development and testing without affecting the mainnet. |

Please leave a reaction 👍/👎 to this suggestion to improve future reviews for everyone!

@aigerimu
Copy link
Contributor Author

/review

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the updates — I reviewed ecosystem/node/overview.mdx and left several suggestions; please apply the inline suggestions to move this forward.

| :---------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Liteserver](/ecosystem/node/overview#liteserver) | In this mode, node keeps the latest shardchain state and serves it to lite clients — external services that request blockchain data. For example, it provides up-to-date blockchain data for wallets. |
| [Archive liteserver](/ecosystem/node/overview#archive-liteserver) | In this mode, node stores all blockchain data, including old blocks and states. For example, it serves explorers with historical data. |
| [Validator](/ecosystem/node/overview#validator) | In this mode, node signs blocks, participates in elections, and earns rewards. It is used to run validation with your stake. |

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[HIGH] Prohibited second‑person pronoun in Validator row

The validator row contains “It is used to run validation with your stake.”, which addresses the reader via “your”. This violates the prohibition on “you/your” (https://github.com/ton-org/docs/blob/main/contribute/style-guide-extended.mdx?plain=1#L169-L171). Revise to neutral phrasing that does not assume reader identity.

Suggested change
| [Validator](/ecosystem/node/overview#validator) | In this mode, node signs blocks, participates in elections, and earns rewards. It is used to run validation with your stake. |
| [Validator](/ecosystem/node/overview#validator) | In this mode, the node signs blocks, participates in elections, and earns rewards. Used to run validation with a validator’s stake. |

Please leave a reaction 👍/👎 to this suggestion to improve future reviews for everyone!

| [Archive liteserver](/ecosystem/node/overview#archive-liteserver) | In this mode, node stores all blockchain data, including old blocks and states. For example, it serves explorers with historical data. |
| [Validator](/ecosystem/node/overview#validator) | In this mode, node signs blocks, participates in elections, and earns rewards. It is used to run validation with your stake. |
| [Collator](/ecosystem/node/overview#collator) | In this mode, node produces blocks for validators. It reduces load on the validators by setting up block creation on a separate host machine. |
| [Nominator pool](/ecosystem/node/overview#nominator-pool) | In this mode, the smart contract accepts stakes from multiple users and operates a validator on their behalf, distributing rewards securely among participants. |

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[HIGH] Broken/mismatched anchor in “Nominator pool” link

The table links to /ecosystem/node/overview#nominator-pool (singular), but the section heading is “### Nominator pools” (plural, line 54), which generates the anchor #nominator-pools. This makes the link non-functional. Anchors must resolve correctly per https://github.com/ton-org/docs/blob/main/contribute/style-guide-extended.mdx?plain=1#L625-L629.

Suggested change
| [Nominator pool](/ecosystem/node/overview#nominator-pool) | In this mode, the smart contract accepts stakes from multiple users and operates a validator on their behalf, distributing rewards securely among participants. |
| [Nominator pool](/ecosystem/node/overview#nominator-pools) | In this mode, the smart contract accepts stakes from multiple users and operates a validator on their behalf, distributing rewards securely among participants. |

Please leave a reaction 👍/👎 to this suggestion to improve future reviews for everyone!

</Aside>

**Validator nodes** or **validators** are the TON network participants who propose new blocks and verify transactions according to the TON's _proof-of-stake_ mechanism. In this way, validators contribute to the overall blockchain security.
Validator nodes or validators are the TON network participants who propose new blocks and verify transactions according to TON's [_proof-of-stake_](https://en.wikipedia.org/wiki/Proof_of_stake) mechanism. The top 400 validators are selected based on network [configuration parameter](/foundations/config#param-16%3A-validators-limits). Validators receive rewards for validation.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[HIGH] Broken config anchor and unofficial “proof‑of‑stake” link

This line has two issues: it links “proof‑of‑stake” to Wikipedia instead of the internal canonical page (/foundations/consensus), and it links to /foundations/config#param-16%3A-validators-limits using a colon-encoded anchor that does not exist. The actual heading is “## Param 16: validators limits” which resolves to #param-16-validators-limits (see

docs/foundations/config.mdx

Lines 264 to 266 in 2e7f225

## Param 16: validators limits
This parameter represents the limits on the number of validators in the TON Blockchain. It is directly used by the elector smart contract.
). External sources should not be used when an internal canonical page exists (https://github.com/ton-org/docs/blob/main/contribute/style-guide-extended.mdx?plain=1#L631-L634), and anchors must resolve correctly (…#L625-L629).

Suggested change
Validator nodes or validators are the TON network participants who propose new blocks and verify transactions according to TON's [_proof-of-stake_](https://en.wikipedia.org/wiki/Proof_of_stake) mechanism. The top 400 validators are selected based on network [configuration parameter](/foundations/config#param-16%3A-validators-limits). Validators receive rewards for validation.
Validator nodes or validators are the TON network participants who propose new blocks and verify transactions according to TON's [_proof-of-stake_](/foundations/consensus) mechanism. The top 400 validators are selected based on network [configuration parameter](/foundations/config#param-16-validators-limits). Validators receive rewards for validation.

Please leave a reaction 👍/👎 to this suggestion to improve future reviews for everyone!

Comment on lines +62 to +75
## When to run your own node

- **Use public endpoints when:**
- building prototypes or light integrations.

<Aside
type={"note"}
>
Liteservers and [APIs](/ecosystem/api/overview) offer read access to blockchain data and support transaction submission to the network.
</Aside>

- **Run your own full node when:**
- running a validator or staking service.
- guaranteed uptime or high-volume access beyond third-party limits is required.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[HIGH] Prohibited second‑person pronouns in section heading and list

The heading “When to run your own node” and the list item “Run your own full node when:” use second‑person pronouns (“your”), which is prohibited by the style guide (https://github.com/ton-org/docs/blob/main/contribute/style-guide-extended.mdx?plain=1#L169-L171). Documentation must avoid addressing the reader directly. The lines above are in the PR diff; revise to neutral, imperative language.

Please leave a reaction 👍/👎 to this suggestion to improve future reviews for everyone!

Comment on lines +81 to +83
| Validator or nominator | [Setting up a node using MyTonCtrl](./setup-mytonctrl) with validator, nominator pool, or single nominator workflows. MyTonCtrl automates validator wallets, overlays, elections, and upgrades. |
| Liteserver APIs | [Setting up a node using MyTonCtrl](./setup-mytonctrl) with liteserver mode. Enable archive mode if required. |
| Isolated development network | [Setting up a local blockchain using MyLocalTon](./setup-mylocalton) with a local shard, explorer, and APIs for development and testing without affecting the mainnet. |

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[HIGH] Relative internal links used

The table rows use relative link URLs starting with ./, which violates the style rule requiring root-absolute paths for internal links. This increases breakage risk during future file moves and within embed contexts. See https://github.com/ton-org/docs/blob/main/contribute/style-guide-extended.mdx?plain=1#L625-L629 for the link target/format rule. The lines above are in the PR diff and introduce these relative URLs.

Suggested change
| Validator or nominator | [Setting up a node using MyTonCtrl](./setup-mytonctrl) with validator, nominator pool, or single nominator workflows. MyTonCtrl automates validator wallets, overlays, elections, and upgrades. |
| Liteserver APIs | [Setting up a node using MyTonCtrl](./setup-mytonctrl) with liteserver mode. Enable archive mode if required. |
| Isolated development network | [Setting up a local blockchain using MyLocalTon](./setup-mylocalton) with a local shard, explorer, and APIs for development and testing without affecting the mainnet. |
| Validator or nominator | [Setting up a node using MyTonCtrl](/ecosystem/node/setup-mytonctrl) with validator, nominator pool, or single nominator workflows. MyTonCtrl automates validator wallets, overlays, elections, and upgrades. |
| Liteserver APIs | [Setting up a node using MyTonCtrl](/ecosystem/node/setup-mytonctrl) with liteserver mode. Enable archive mode if required. |
| Isolated development network | [Setting up a local blockchain using MyLocalTon](/ecosystem/node/setup-mylocalton) with a local shard, explorer, and APIs for development and testing without affecting the mainnet. |

Please leave a reaction 👍/👎 to this suggestion to improve future reviews for everyone!

import { Aside } from "/snippets/aside.jsx";

## Full node modes
A blockchain full node is software that stores the current state of the [shardchains](/foundations/shards) defined in the node's configuration.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Factually incorrect: that's not what it really stores.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Ecosystem > Node > Overview] Improve article

4 participants